package com.pattern.strategy_youth.demo4;

/**
 * @author ：qs
 * @date ：Created in 2022/3/3
 * @description：
 *
 * 1. 在“编码规范”那一部分我们讲过，函数的行数不能过多，最好不要超过一屏的大小。
 *    所以，为了避免 sortFile() 函数过长，我们把每种排序算法从 sortFile() 函数中抽离出来，
 *    拆分成 4 个独立的排序函数。
 * 2. 如果只是开发一个简单的工具，那上面的代码实现就足够了。
 *    毕竟，代码不多，后续修改、扩展的需求也不多，怎么写都不会导致代码不可维护。
 *    但是，如果我们是在开发一个大型项目，排序文件只是其中的一个功能模块，那我们就要在代码设计、代码质量上下点儿功夫了。
 *    只有每个小的功能模块都写好，整个项目的代码才能不差。
 * 3. 在刚刚的代码中，我们并没有给出每种排序算法的代码实现。
 *    实际上，如果自己实现一下的话，你会发现，每种排序算法的实现逻辑都比较复杂，代码行数都比较多。
 *    所有排序算法的代码实现都堆在 Sorter 一个类中，这就会导致这个类的代码很多。
 *    而在“编码规范”那一部分中，我们也讲到，一个类的代码太多也会影响到可读性、可维护性。
 *    除此之外，所有的排序算法都设计成 Sorter 的私有函数，也会影响代码的可复用性。
 * @modified By：
 */
public class SortingTool {
    public static void main(String[] args) {
        Sorter sorter = new Sorter();
        sorter.sortFile(args[0]);
    }
}
